Le partage de données se fait communément avec le protocole SMB (Server Message Block). Ce protocole a l'avantage d'être supporté par l'ensemble des plate-formes (Windows, Apple, Linux, Unix).
Une alternative à celui-ci est NFS (Network File System) qui, historiquement, est le protocole de partage de données dans le monde Unix et plus tard Linux. Ces trois premières versions manquaient cruellement de sécurité. La quatrième version apporte des éléments de sécurité concrets dont :
Pour cette documentation, les paramètres suivants seront utilisés 1)
| Nom de domaine | Royaume (realm) |
|---|---|
| example.com | EXAMPLE.COM |
| Nom de machine | Adresse IP | Role |
|---|---|---|
| ubndc01 | 192.0.2.11 | Contrôleur de domaine |
| ubnfs01 | 192.0.2.12 | Serveur de fichier |
| ubnws01 | 192.0.2.13 | Machine client |
Le répertoire partagé sera le répertoire /media/example/home présent sur le serveur de fichier et contenant les répertoires home des utilisateurs du domaine. Ce répertoire sera monté sur chaque machine du domaine afin de permettre à chaque utilisateur d'accéder à son répertoire home depuis n'importe quelle machine du domaine.
Ult.
L'installation de NFS se fait avec le paquet nfs-kernel-server
sudo apt-get install nfs-kernel-server
Avant de faire fonctionner NFS, il faut préparer le partage. NFSv4 base son partage sur une racine virtuelle définie. Bien qu'il soit possible d'utiliser des répertoires déjà existants, il est recommandé d'en créer un à la racine du système de fichier, par exemple /export. Ensuite pour chaque répertoire qui sera partagé, il faut créer un sous répertoire, par exemple /export/home. A ce stade, les données partagées le serait sur la partition Root ce qui n'est pas une bonne pratique. Afin de ne pas modifier le reste du serveur de fichier, il faut procéder à la jonction du répertoire /export/home avec le répertoire qui stockera réellement les données, /media/example/home.
En ligne de commande
sudo mount --bind /media/example/home /export/home
Ou en ajoutant une ligne dans le fichier /etc/fstab pour que l'opération soit effectuée à chaque redémarrage
# Export NFS4 /media/example/home /export/home none bind 0 0
Cette structure de répertoires sous /export doit être considérée comme une structure virtuelle permettant le fonctionnement de NFS et non pas comme une structure pour le stockage de fichiers directement. Ainsi, l'impact en espace disque sur la partition Root est quasi nul.
La configuration des partages se fait au travers du fichier /etc/exports
/export 192.0.2.0/24(rw,sync,fsid=0,no_subtree_check,crossmnt,sec=krb5) /export/home 192.0.2.0/24(rw,sync,no_subtree_check,sec=krb5)
La première ligne avec l'option fsid=0 (ou fsid=root) défint la racine virtuelle du système de fichier partagé. Ainsi, tout les fichiers et répertoires sous /export sont accessibles par le partage NFS.
L'option sec=krb5 définit le niveau de sécurité exigé. Il en existe 3:
A ce stade, le démarrage du serveur NFS ne devrait pas encore fonctionner. config /etc/default/nfs-kernel-server …
Contributeur principal : Qedinux